package com.dys.testdatetime13;

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

/**
 * @className: com.dys.testdatetime13.DateTimeFormatter03
 * @description: 日期时间格式化和解析操作
 * @author: pine cone
 * @version: v1.0.0
 * @createTime: 2024/09/03 下午9:46
 */
public class DateTimeFormatter03 {
    /**
     * 这是一个main()方法,是应用程序的入口
     *
     * @param args 方法的形参列表,是一个字符串数组,包含了从命令行传递给程序的参数
     */
    public static void main(String[] args) {
        dateTimeFormat();
    }

    /**
     * 日期时间格式化和解析操作
     */
    private static void dateTimeFormat() {
        // 1.获取当前日期时间
        LocalDateTime now = LocalDateTime.now();
        // 2.指定解析格式 使用系统默认解析格式
        DateTimeFormatter isoLocalDateTime = DateTimeFormatter.ISO_LOCAL_DATE_TIME;

        // 3.将日期时间类型转换为字符串
        String format = now.format(isoLocalDateTime);
        System.out.println("format = " + format);

        // 4.通过ofPattern方法来指定 特定的格式
        DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        String format1 = now.format(dateTimeFormatter);
        System.out.println("format1 = " + format1);

        // 5.将字符串解析成一个日期时间格式
        LocalDateTime parse = LocalDateTime.parse("1998-11-16 10:30:22", dateTimeFormatter);
        System.out.println("parse = " + parse);
    }
}
